<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>

    </style>
</head>

<body>
    <script>
        // js严格模式: 作用:消除js语法的一些不合理之处

        // 全局开启严格模式
        "use strict"

        // function test(){
        //     //局部开启严格模式
        //     "use strict"
        // }

        // 1.全局变量必须先声明
        // n=10;
        // console.log(n);

        // 2.禁止使用with
        // 3.禁止创建eval作用域
        // https://blog.csdn.net/qq_45067244/article/details/99316167
        // https://blog.csdn.net/aaahuahua/article/details/122201318

        // 4.禁止this指向window
        function a() {
            console.log(this);//严格模式下 this指向undefined
        }
        a()

        // 5.函数的参数不能重名

        function test(a, a, b) {

            console.log(a);//非严格模式下 重名的参数 以后传入的为主 可以正常使用

            console.log(b);
        }
        test(10, 20, 30)













    </script>
</body>

</html>